move boot_aplx.s stack to bottom half of DTCM #139
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR addresses issue #137. It completes the move of all scamp components previously located in the TOP half of DTCM to the bottom half.
This allows the boot image to be 32 KiB long.
The safety of the stack move is an issue given that boot_aplx.s is used to boot scamp and also to scatter load applications. It is safe to locate the boot_aplx.s stack at the top of the bottom half of DTCM to boot scamp but it appears unsafe to do it when loading applications. An application can occupy any part of DTCM, potentially overwriting the boot_aplx.s stack, compromising the aplx scatter process.
To resolve the possible stack corruption issue during application scatter load, in this PR boot_aplx.bin is built twice, with different stack settings: top of bottom half of DTCM for scamp (scamp_boot_aplx.bin) and top of DTCM for applications (boot_aplx.bin).